Skip to content

Conversation

pcarranzav
Copy link
Member

(Branching from #253 - we should merge that one first)

This makes the Connect app behave a lot more like a browser wallet like Privy or Metamask.
We'll need to think very carefully about how to secure these credentials client-side (e.g. CSP), but we already have that problem for the all the identity keys in the application.
We should make sure users are aware that the Connect app is given full admin access to the Geo smart account, the keys live in the browser window and are only stored on the sync server encrypted.

Maybe it would be better to not store the keys in localStorage? then the user would always have to sign to decrypt in every Connect flow, but after that they don't need to sign any other transactions or messages.

@pcarranzav
Copy link
Member Author

For now I've changed it so that keys are stored in sessionStorage - we still need to work on ensuring it's secure, but it's a bit better as they will be wiped when a tab is closed. The UX is also not too bad as the consequence of wiping the keys is a single wallet signature to decrypt them.

@nikgraf nikgraf marked this pull request as ready for review June 27, 2025 18:20
@nikgraf nikgraf merged commit f7557a7 into main Jun 27, 2025
6 checks passed
@nikgraf nikgraf deleted the pcv/connect-owner-key branch June 27, 2025 18:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants